ReAct(Reasoning and Acting)推理与行动框架指南
摘要
ReAct(Synergizing Reasoning and Acting)是由 Princeton University 与 Google 于 2022 年提出的 LLM Agent 基础框架。它通过让模型在**推理(Reasoning / Thought)与行动(Acting / Tool Use)**之间交替进行,形成闭环循环,从而实现更可靠、动态、可解释的任务执行。
2026 年,ReAct 仍然是构建单 Agent 系统最常用、最稳定、最易落地的核心范式,被主流 Agent 框架广泛采用。与 Long CoT、Self-Reflection、原生工具调用等技术深度融合后,其性能和适用范围得到显著扩展。
1. ReAct 核心原理
1.1 什么是 ReAct?
-
核心思想:单纯的 Chain of Thought 容易产生幻觉,单纯的工具调用又缺乏规划。ReAct 将两者有机结合:推理指导行动,行动结果反馈并更新推理。
-
经典循环结构:
- Thought:分析当前状况、制定下一步计划、决定是否需要使用工具。
- Action:选择并调用具体工具。
- Observation:接收工具返回的结果。
- 重复上述循环,直到模型认为可以输出最终答案(Final Answer)。
-
关键优势:
- 极强的可解释性(完整 Thought 轨迹可供人类审查)
- 显著降低幻觉现象
- 适应动态和开放环境
- 便于调试、监控和人工干预
1.2 原论文核心贡献(2022)
- 在知识密集型任务(如 HotpotQA、FEVER)上大幅优于标准 CoT。
- 在交互式环境(如 ALFWorld、WebShop)中,成功率显著提升,仅需少量示例即可达到良好效果。
- 证明了推理与行动协同的优越性。
2. 最新发展(2025-2026)
- ReAct 仍是大多数生产级 Agent 的默认起点。
- 重要融合趋势:
- 与 Long CoT 结合:在 Thought 阶段进行更深入、带试错的内部推理。
- 原生工具调用(Function Calling)支持:主流模型已内置,简化实现流程。
- 与 Self-Reflection 结合:行动失败后进行自我批判和优化。
- Planner-Executor 架构:高层规划器制定策略,低层执行器使用 ReAct 完成具体行动。
- 框架层面的状态管理和持久化支持,大幅提升长时序任务能力。
3. 实现方式
3.1 基础实现思路
ReAct 通常通过精心设计的 Prompt 模板驱动模型遵循固定格式输出(Thought → Action → Observation)。现代实现中,框架会自动解析输出并管理循环流程。
3.2 增强变体
- ReAct + Self-Reflection:在循环中或失败后增加反思步骤。
- Hierarchical ReAct:多层结构,主 Agent 负责协调,子 Agent 执行具体任务。
- Multi-Agent ReAct:多个 Agent 通过 ReAct 模式进行协作。
- ReAct + ToT:在关键决策点引入思维树进行多路径探索。
4. 实际案例
案例 1:研究与信息汇总 Agent
模型需要查找最新信息时,会先思考需要哪些数据来源,然后调用搜索工具,观察结果后决定是否需要进一步浏览具体页面,最终汇总并输出带来源的结论。
案例 2:交互式任务 Agent
在虚拟或真实环境中(如网页操作、机器人控制),模型通过 Thought 规划动作序列,执行具体操作,根据环境反馈持续调整策略。
案例 3:代码与数据分析 Agent
面对数据分析需求时,思考分析步骤,调用代码执行工具,观察中间结果,迭代优化分析逻辑,最终生成报告。
案例 4:客服与问题解决 Agent
结合知识库检索和外部 API,动态处理复杂用户查询,并在必要时引导人工介入。
5. 适用场景
强烈推荐使用 ReAct 的场景:
- 工具密集型任务(搜索、API 调用、数据库查询、浏览器控制等)
- 动态和交互式环境
- 需要高可解释性和可审计的生产系统(金融、医疗、法律、客服)
- 作为多 Agent 系统的基础构建模块
建议结合其他模式:
- 纯复杂推理任务 → 优先 Long CoT 或 ToT
- 高可靠性需求 → 叠加 Self-Reflection
- 多方案探索需求 → 结合 ToT
6. 与其他推理模式的对比(2026视角)
| 维度 | CoT / Long CoT | ToT | Self-Reflection | ReAct |
|---|---|---|---|---|
| 核心结构 | 线性 / 长链 | 树状搜索 | 迭代批判 | Thought-Act-Observation 循环 |
| 工具使用能力 | 弱 | 中 | 中 | 极强 |
| 动态环境适应 | 弱 | 中 | 中 | 极强 |
| 可解释性 | 高 | 最高 | 高 | 高 |
| 计算成本 | 中 | 高 | 中 | 中-高 |
| 最佳任务类型 | 数学、写作 | 规划、创造 | 代码审查、纠错 | 工具 Agent、检索、交互 |
| 2026 地位 | 基础推理 | 探索型 | 可靠性增强 | Agent 默认循环框架 |
最强混合策略:Long CoT(深度思考) + ReAct(行动执行) + Self-Reflection(自我优化) + ToT(关键节点探索)。
7. 最佳实践与注意事项(2026)
- 清晰定义工具描述和输出格式约束
- 建立完善的错误处理、重试和退出机制
- 设置最大循环步数,防止无限循环
- 选择工具调用能力强的底层模型
- 重点关注可观测性,完整记录每一步轨迹
- 对高风险操作实施人类审核流程
- 定期评估任务成功率、步骤效率和成本
8. 未来趋势
- ReAct 继续作为 Agent 的底层循环,被更高级的规划-执行架构包裹
- 多模态扩展(支持图像、视频、语音交互)
- 与强化学习和过程监督进一步融合,实现持续自进化
- 标准化评估基准推动框架持续优化
参考文献
- Yao et al., ReAct: Synergizing Reasoning and Acting in Language Models (2022)
- 2025-2026 年主流 Agent 框架实践总结
- OpenAI o-series、Claude 4 等模型的 Agent 能力报告
文档结束
此文档为全新完整独立版本,已去除所有代码示例,结构清晰、内容全面。如需调整长度、增加特定案例、生成其他主题(如 ToT 或 Self-Reflection)的独立文档,或进一步优化,请随时告诉我!